Industrial robots perform a variety of tasks involving the movement and manipulation of physical objects. A typical industrial robot may, for example, have one or more arms, equipped with grippers, that allow the robot to pick up objects at a particular location, transport them to a destination location, and put them down in accordance with particular coordinates, thereby, for example, stacking them or placing them into cardboard boxes present at the destination location.
Robots may manipulate different types of objects and perform many tasks beyond simply moving them—for example, welding, joining, applying fasteners, etc. As a result, many different “end effectors” have been developed for deployment on robot appendages; some of these end effectors, such as grippers, have utility across a range of tasks, while others, such as weld guns, are designed to perform a single, specialized task. To promote versatility, a commercial robot may accommodate different end effectors. For example, different end effectors may share a common linkage design that permits them to be interchangeably mounted to the cuff or wrist of a robot arm. Accommodating the robot to the end effector operationally is more difficult. Frequently, selection of the end effector for a robot occurs during system integration or assembly and is essentially permanent; the programming necessary to operate the selected end effector is written into the controller code for the robot. In some robots, end effectors may be changed dynamically during operation, but typically this occurs at preprogrammed phases of task execution; that is, the robot controller code signals the need for a new end effector when the code governing the next task expects a replacement. Even dynamic changes in the robot's end effector, in other words, occur in response to robot expectation as it executes tasks or when the robot is outfitted for a new task.
What is needed, therefore, is a more versatile approach to hot-swapping of end effectors that permits arbitrary replacement by the operator and dynamic accommodation by the robot. The operator, for example, may find during operation that the task being performed by the robot unexpectedly requires finer control than the current set of grippers permits. In such circumstances, the operator will want to replace the existing grippers with a more suitable end effector, but without rewriting the robot's task-execution code.